package hotel.quartz.oversea.vo.meituan;

import hotel.base.oversea.vo.meituan.response.order.MtHotelOrderCheckVo;
import lombok.Data;

/**
 * 下游请求参数  预约下单
 */
@Data
public class MtHotelOrderBookingParamVo {

    /**
     * 	分销平台酒店ID。
     */
    private String hotelId;
    /**
     * 	分销平台产品ID。
     */
    private String goodsId;
    /**
     * 入住人姓名列表，各姓名间以英文逗号分隔，如"陈振锋,Avril Lavigne"。
     */
    private String personNames;
    /**
     * 联系人姓名。
     */
    private String contactName;
    /**
     * 联系人电话号码。
     */
    private String contactPhone;
    /**
     * 最晚到店时间，格式为yyyy-MM-dd HH:mm:ss。
     */
    private String arriveDate;
    /**
     * 入住日期，格式为yyyy-MM-dd, 钟点房时入住时间，格式为yyyy-MM-dd HH:mm:ss。
     */
    private String checkinDate;
    /**
     * 离店日期，格式为yyyy-MM-dd, 钟点房时离店时间，格式为yyyy-MM-dd HH:mm:ss。
     */
    private String checkoutDate;
    /**
     * 预订间数。
     */
    private Integer roomNum;
    /**
     * 订单总价，单位为分。总价=预订房间数x预定日期内房间单价。例如，4月1日入住，4月3日离店，预定2间房，则总价=2*(4月1日房价+4月2日房价）
     */
    private Integer totalPrice;
    /**
     * 结算价，单位为分。结算价=总价 - 分销商佣金。
     */
    private Integer settlePrice;
    /**
     * 分销商订单ID，非空
     */
    private String distributorOrderId;
    /**
     * 用户预约下单时填写的备注信息。
     */
    private String comment;
    /**
     * 身份证号(填写一个入住人)
     */
    private String personIdentities;
    /**
     * 是否需要美团开发票: 0 不需要 1 需要
     */
    private Integer needInvoice;
    /**
     * 发票信息，当needInvoice=1时必填。
     */
    //private MtHotelOrderBookingInvoiceParamVo invoice;
    /**
     * 下单前校验接口返回：最新价格信息列表，code=0或8时会返回
     * 非空：否
     */
    private MtHotelOrderCheckVo mtHotelOrderCheckVo;

    /*public void setInvoice(MtHotelOrderBookingInvoiceParamVo invoice) {
        if(null == invoice){
            this.invoice = new MtHotelOrderBookingInvoiceParamVo();
        }
    }*/

}
